package fr.umlv.m2.uwp2011.service.matiere.impl;

import java.util.ArrayList;
import java.util.List;

import org.springframework.stereotype.Service;

import fr.umlv.m2.uwp2011.persistence.matiere.Matiere;
import fr.umlv.m2.uwp2011.persistence.matiere.dao.HibernateMatiereDAO;
import fr.umlv.m2.uwp2011.service.matiere.DisplayMatiere;
import fr.umlv.m2.uwp2011.service.matiere.IMatiereService;

@Service("matiereService")
public class MatiereServiceImpl implements IMatiereService {

	HibernateMatiereDAO hibernateMatiereDAO = new HibernateMatiereDAO();
	
	public List<DisplayMatiere> getByUserAndCursus(String user_id, Long cursus_id) {
		List<Matiere> listMatiere = hibernateMatiereDAO.findByUserAndCursus(user_id, cursus_id);
		List<DisplayMatiere> listDisplayMatiere = new ArrayList<DisplayMatiere>(listMatiere.size());
		
		for(Matiere m : listMatiere) {
			DisplayMatiere dm = new DisplayMatiere();
			dm.setMatiere(m);
			listDisplayMatiere.add(dm);
		}
		return listDisplayMatiere;
	}

	@Override
	public List<DisplayMatiere> getByUserID(String user_id) {
		List<Matiere> listMatiere = hibernateMatiereDAO.findByUserID(user_id);
		List<DisplayMatiere> listDisplayMatiere = new ArrayList<DisplayMatiere>(listMatiere.size());
		
		for(Matiere matiere : listMatiere) {
			DisplayMatiere dc = new DisplayMatiere();
			dc.setMatiere(matiere);
			listDisplayMatiere.add(dc);
		}
		return listDisplayMatiere;
	}
	
}
